Many computing applications require some amount of data entry. Some applications call for only a very limited number of characters, such as when a user enters a password or a PIN. Other applications, for example word processing or e-mail, require the user to enter extended amounts of data. For these latter applications, the keyboard reigns as the supreme data-entry device. Its design has been fashioned over more than a century to take advantage of people's nature manual dexterity. Today, typing on a keyboard is a common skill, and its supporting hardware and software are standardized and cheap.
Recently, small portable computing devices that support some form of data entry have become common. Such devices, typically smaller than a laptop computer, include, for example, cellular telephones, two-way pagers, and personal digital assistants. Often, these devices include a touch-sensitive display screen that serves both to display output from the computing device to its user and to receive input from the user. For some applications, the user “writes” with a stylus on the screen. The user's handwriting is decoded and becomes input to the computing device. In other applications, the user's input options are displayed as control icons on the screen. When the user selects an option by touching the icon associated with the option, the computing device detects the location of the touch and sends a message to the application or utility that presented the icon.
These devices often do not include a keyboard. To enter text, a “virtual keyboard,” typically a set of icons that look like the keycaps of a traditional keyboard, are painted on the screen. The user “types” by successively touching areas on the screen associated with specific keycap icons. This method works well for applications that require minimal data entry and where speed of entry is not a concern.
However, advancing data processing and communications technologies are enabling these small portable devices to support more sophisticated applications, specifically applications that call for extended data entry. As one interesting example, consider a recently introduced tablet-like detachable monitor supported by a host computing device, the host typically a personal computer (PC) sitting in a fixed location. The tablet has a touch-sensitive display screen. The tablet, once detached from the host, communicates wirelessly with the host and operates as a portable input/output device. A user carries the tablet around an office or home, using the tablet to gain access to applications running on the fixed-location host. Some of these applications, for example e-mail, word processing, and Web browsing, require extended text entry.
As experience with this tablet and with other increasingly capable portable devices has hinted, extensive data entry would be facilitated by a more robust data-entry mechanism than a stylus (or finger) on a virtual keyboard. Extensive typing on a virtual keyboard is a slow and tedious process, partly because a user must continually correct the position of his fingers over the keycap icons. A traditional hardware keyboard provides finger-positioning feedback via the indented surfaces of the keys. Touch-sensitive display screens are flat to allow good viewing, but their flatness does not provide such tactile feedback. As another hindrance to quick typing, these screens are also quite rigid with essentially no “give” to tell the user that a virtual key has been pressed.
Several attempts have been made to add a hardware keyboard to a small portable device, but none of these attempts has led to a satisfactory mechanism for extended data entry. One problem lies in the size of the hardware keyboard: full-size keyboards are cumbersome to carry around, detracting from the very portability that defines these devices, while smaller keyboards, useful for limited data-entry applications, do not comfortably accommodate the human hand to allow for rapid and extended typing.
What is needed is a way to make a touch-sensitive display screen into a more acceptable extended data-entry device. The utility of such a device would not be limited to portable display devices, but would enhance the experience of entering data on any touch-sensitive display screen.